package com.cg.asm.core.domain.vo.menu;

import lombok.Data;

import java.util.List;
import java.util.Objects;

@Data
public class MenuUserLoginVO {
    private String funListCode;
    private String funListName;
    private String funListType;
    private String funListUrl;
    private String funListIcon;
    private String selfLevelCode;
    private String parentLevelCode;
    private String funListOrder;
    private List<MenuUserLoginVO> children;

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;
        MenuUserLoginVO that = (MenuUserLoginVO) o;
        return Objects.equals(funListCode, that.funListCode) &&
                Objects.equals(funListName, that.funListName) &&
                Objects.equals(funListType, that.funListType) &&
                Objects.equals(funListUrl, that.funListUrl) &&
                Objects.equals(funListIcon, that.funListIcon) &&
                Objects.equals(selfLevelCode, that.selfLevelCode) &&
                Objects.equals(parentLevelCode, that.parentLevelCode) &&
                Objects.equals(funListOrder, that.funListOrder) &&
                Objects.equals(children, that.children);
    }

    @Override
    public int hashCode() {
        return Objects.hash(funListCode, funListName, funListType, funListUrl, funListIcon, selfLevelCode, parentLevelCode, funListOrder, children);
    }
}
